
Groupe de commandes "VAR": Variable
===================================

Avec ces commandes on peut mettre en oeuvre une grande quantit de 
scnarios :
non seulement pour une intervention interne, comme indiqu avec la 
commande LOOP (dans le chapitre "BTCH), mais aussi pour automatiser des 
calculs dans Excel (convertir des $ en Euro, etc.).


/VAR.>.CLIP ...........: Copie la variable dans le presse-papiers 
                         (presse-papiers = VAR)
/VAR.<.CLIP [t] .......: Colle le presse-papiers dans la variable 
                         (VAR = presse-p.), facultatif : ignore les 
------------------------ sparateurs de millier <t>

Exemple .>.CLIP: le bouton "haut" du profil "Calculatrice du scnario"
Exemple .<.CLIP: le bouton "x 10" du profil "Stock"

Avec ces commandes un calcul dans Excel est rendu possible.
Une faon d'oprer possible :

1. Une cellule Excel est copie dans le presse-papiers
2. Le contenu du presse-papiers est coll  la variable
3. Le calcul de la variable s'accomplit
4. La variable est envoye  une autre cellule

Exemple de scnario:

{/BTCH.EXPLICIT}
{HOLD.CONTROL}c
{/VAR.<.CLIP}
{/VAR.MUL 0,51129188}
{KEY.ESC}{KEY.RIGHT}
{/VAR.SEND,}
{KEY.LEFT}{KEY.DOWN}

Ce scnario convertit la valeur d'une cellule en DM en Euro, crit le 
rsultat dans la cellule  sa droite et conduit le curseur dans la 
cellule suivante de la colonne DM.

--> Remarque
La commande qui copie la VAR dans le presse-papiers peut certes 
reconnatre si elle doit changer une virgule en un point-dcimal (le 
systme interne calcule avec un "point"), mais pour un sparateur de 
millier comme "1.234,56" c'est beaucoup plus difficile.
Si le paramtre <t> "." est ajout, RK va ignorer le "point" dans la 
valeur "1.234,56", et donnera finalement  la variable VAR la valeur
formate de "1234.56".

Le scnario peut tre:

{/BTCH.EXPLICIT}
{/CLIP.TXT.SET 1.234,56}
{/VAR.<.CLIP .}
{/VAR.VIEW}


/VAR.<.MCI mod ........: Copie l'info d'tat MCI dans la variable VAR, 
                         <mod>= 0 : piste actuelle, 1 : toutes les pistes,
------------------------ 2 :  jouer ? oui/non

Cette commande a t conue pour les commandes MCI (voir ce fichier-texte),
afin de pouvoir stocker plusieurs tats du lecteur-CD dans la variable VAR
(temporaire).

= 0  :  VAR = Titre actuel
= 1  :  VAR = Tous les titres du CD
= 2  :  VAR = le CD est jou (VAR=1) ou non (VAR=0)

Exemple: bouton "Hasard" du profil "Lecteur CD"


/VAR.<.PROF mod .......: Copie le rglage temporaire du profil actuel 
                         dans la variable VAR, <mod>=0:colonne, 1:ligne, 
------------------------ 2:largeur, 3:hauteur

Cette commande arrange les commandes ME.PROF.TMP, pour permettre de 
changer temporairement les dimensions du profil actuel.
Comme le nombre de colonnes et de lignes et la largeur et hauteur des 
boutons sont modifiables, cette commande permet aussi  chaque fois 
d'enregistrer (pas sur le disque) les valeurs de rglage du profil 
actuel.

= 0 : VAR = nb. de colonnes       du profil actuel
= 1 : VAR = nb. de lignes         du profil actuel
= 2 : VAR = largeur des boutons   du profil actuel
= 3 : VAR = hauteur des boutons   du profil actuel

Exemple: bouton "< Taille >" du profil "Dmo Taille et Go-Exit"


/VAR.<.WIN ............: To store the number of the activ window in current VAR for activation later
/VAR.>.WIN ............: To activate the window (by number) which was stored in VAR before
------------------------

Beispiel-Skript:

{/BTCH.EXPLICIT}
{/VAR.<.WIN}
{/APP.ACTIVATION.OFF}
{/CODE.KEY 91}
{KEY.UP}{KEY.UP}{KEY.UP}{KEY.UP}{KEY.UP}{KEY.UP}
{KEY.RIGHT}
{KEY.DOWN}{KEY.DOWN}
{KEY.ENTER}
{/VAR.>.WIN}

Dieses Beispiel ffnet das Drucker-Fenster (sofern das Start-Men nicht abweichend
strukturiert ist) und aktiviert anschlieend das Fenster, welches vor dem Aufruf des
Skriptes aktiv war.

--> Beachte!
Eine Fenster-Nummer wird durch Windows dynamisch zugeordnet. Ein erneutes ffnen eines
zuvor geschlossenen Fensters fhrt i.d.R. dazu, da es eine neue Fenster-Nummer erhlt.


/VAR.SET val ..........: Fixe la variable  la valeur <val> (VAR = val)
/VAR.ADD val ..........: Ajoute la valeur <val>  la variable 
                         (VAR = VAR+val)
/VAR.SUB val ..........: Soustrait la valeur <val> de la variable 
                         (VAR = VAR-val)
/VAR.MUL val ..........: Multiplie la variable par la valeur <val> 
                         (VAR = VAR*val)
/VAR.DIV val ..........: Divise la variable par la valeur <val> 
------------------------ (VAR = VAR/val)

Ces commandes servent d'instruction de calcul  la variable.

Exemple: {/VAR.SET 5}{/VAR.ADD 1.5}

La valeur de la variable s'lve, aprs excution de la commande,  6,5.

Autres exemples: les boutons "v..." du profil "Stock"


/VAR.CLR ..............: Efface la variable (VAR = 0)
------------------------

Exemple: le bouton "efface v" du profil "Stock"


/VAR.ASK ..............: Rgle la variable  une valeur dfinie par
------------------------ l'utilisateur

Exemple: le bouton "format" du profil "Stock"


/VAR.CLP.SEARCH str ...: Cherche dans le presse-papiers la srie <str> et 
------------------------ rgle la variable VAR  la 1re position trouve

Exemple: {/VAR.CLP.SEARCH la}

Si le presse-papiers contient "cherche la srie et rgle la variable...", 
VAR sera rgl  9 (le "l" du 1er "la" est le 9me caractre).


/VAR.FLD.ASK ..........: Ouvre la bote pour changer le n du champ 
                         "Elment" et de sa valeur
/VAR.FLD.CHANGE elm ...: Change le n du champ "Elment"  <elm> (1-10)
/VAR.FLD.CLR ..........: Efface tous les champs "Elment" et change le n 
------------------------ de l'lment actuel  1

Depuis la version 7.7, RK a t amlior pour traiter 10 variables au lieu 
d'une seulement.
Toutes les commandes VAR normales travaillent avec le champ "Elment" qui 
est rgl par la commande ASK ou CHANGE. Le champ par dfaut est le n 1.

Par exemple la commande CLEAR efface le champ 1 si l'lment 1 est 
l'lment actuel. Pour effacer l'lment 3, il faut rgler l'lment 
actuel  3 avec la commande ASK ou CHANGE. Mme procdure pour VAR.FLD.ADD 
et les autres.

Exemple ..FLD.ASK: bouton "Dfinition variables" du profil "NE PAS 
                   SUPPRIMER" (raccourci pour ouvrir la bote = Shift+F6)

Exemple ..FLD.CHANGE: bouton "(..." du profil "Calculatrice du scnario"

Exemple ..FLD.CLR: bouton "Aperu" du profil "Calculatrice du scnario"

--> Conseil
Pour la commande ASK, l'excution du scnario peut tre interrompue  
l'aide de la commande "BTCH.EXITIF.CANCEL" si la bote est ferme avec le 
bouton "Ferme".


/VAR.FLD.ADD elm ......: Ajoute la VAR <elm> (1-10)  la VAR actuelle 
                         (VAR=VAR+VAR<elm>)
/VAR.FLD.SUB elm ......: Soustrait la VAR <elm> (1-10) de la VAR actuelle 
                         (VAR=VAR-VAR<elm>)
/VAR.FLD.MUL elm ......: Multiplie la VAR actuelle par la VAR <elm> (1-10) 
                         (VAR=VAR*VAR<elm>)
/VAR.FLD.DIV elm ......: Divise la VAR actuelle par la VAR <elm> (1-10) 
------------------------ (VAR=VAR/VAR<elm>)

--> Note
Voir le profil "Calculatrice du scnario" comme dmonstration. Des 
fonctions comme M+, MR etc.. ont besoin de ces commandes pour s'utiliser 
comme mmoires.

Exemple de scnario:

{/BTCH.EXPLICIT}
{/VAR.FLD.CHANGE 1}
{/VAR.SET 55}
{/VAR.FLD.CHANGE 2}
{/VAR.SET 17}
{/VAR.FLD.CHANGE 1}
{/VAR.FLD.SUB 2}
{/VAR.VIEW}

La commande d'aperu montre que la variable VAR 1 a la valeur 38 (55-17).


/VAR.FLD.MRG e1,e2 ....: Runit les champs "Elment" e1 et e2, spars par 
------------------------ un point (VAR=VAR<e1>.VAR<e2>)

Si "VAR 1" = 12 et "VAR 2" = 34, la valeur du champ de l'lment actuel 
sera de 12.34 ou 12,34 si la commande d'envoi est {/VAR.SEND,}.

Exemple: bouton "H=d" du profil "Calculatrice du scnario"


/VAR.FLD.SWAP elm .....: Permute entre la VAR actuelle et la VAR <elm> 
------------------------ (1-10) (VAR=VAR<elm>, VAR<elm>=VAR)

Cette commande permute le contenu de 2 lments.

Exemple: bouton "x..)" du profil "Calculatrice du scnario"


/VAR.MOD mod ..........: Modifie la variable VAR selon plusieurs modes
------------------------

La variable VAR peut tre modifie selon les diffrents modes 0  3 
suivants :

0 = absolu             : -1 devient 1, 1 reste 1
1 = x-1                : -1 devient 1, 1 devient -1
2 = sans dcimal       : 1,23 devient 1
3 = seulement dcimal  : 1,23 devient 23

Exemple: bouton "H=d" du profil "Calculatrice du scnario"


/VAR.RND [min,max] ....: Cre un chiffre au hasard entre <min> et <max> 
------------------------ (VAR=RND) (dfaut VAR1/2)

Exemple: {/VAR.RND 1,5}{/VAR.SEND}

Cet exemple envoie un chiffre au hasard entre 1 et 5.

-> Note
Depuis la version 8.1.4, le paramtre peut tre abandonn pour rgler les 
variables VAR 1 et 2.
Exemple: bouton "Hasard" du profil "Lecteur CD"


/VAR.SEND .............: Envoie la variable comme une srie  
------------------------ l'application active

Cette commande sert  envoyer la variable (rsultat d'un calcul).

Exemple: le bouton "colle v" du profil "Stock"


/VAR.SEND, ............: Envoie la variable comme une srie au format 
                         virgule (1,5)
/VAR.>.CLIP, ..........: Copie la variable dans le presse-papiers au 
------------------------ format virgule (1,5) (presse-papiers = VAR)

Ces commandes s'avrent galement utiles.


/VAR.SND.FORMAT str ...: Envoie la variable au format-srie <str> 
/VAR.CLP.FORMAT str ...: Copie la variable au format-srie <str> dans 
------------------------ le presse-papiers

Avec ces commandes les rsultats formats sont possibles.

Exemple: {/VAR.SND.FORMAT #'##0.00}

Autre exemple: le bouton "format" du profil "Stock"

Le rsultat se prsentera dans le format : 1'234.55


/VAR.VIEW .............: Affiche la valeur de la variable VAR dans 
------------------------ l'Aperu interne de texte

Exemple: le bouton droit "VAR" du profil "Calculatrice du scnario"

